#ifndef _xLink_H_
#define	_xLink_H_
/*------------------------------------------------------------
  2008/5/18 By YPC
   xMappingNode is of the new mapping node design (please see design document)
   There is no more VVnode and WVnode in this new design.
   "x" means X-man mapping node.
   a xMappingNode can accept abitrary kinds of connections 
   (from WOPs, VMs, collectors, or arithmetic operator
  --------------------------------------------------------------
*/

   
#include <vector>

class xOutMappingPort;
class xInMappingPort ;
class xMappingNode ;

class xLink {

public:
	enum MDSType{ NormalMDSFormat , ParameterizedMDSFormat };
	xOutMappingPort *left ; // allow user to access the attributes directly to increase performance
	xInMappingPort *right ;
	xLink(xOutMappingPort *xleft, xInMappingPort *xright) { left = xleft; right = xright ; }
	~xLink() { }
	
	std::string toMDString(MDSType) ;
};
#endif 